package main

import (
	"fmt"
)

func main() {
	//数组是值类型  拷贝
	arr1 := [4]int{1, 2, 3, 4}
	arr2 := arr1
	fmt.Println(arr1, arr2) //[1 2 3 4] [1 2 3 4]
	arr1[0] = 100           //就是在改变一个数组的元素时，
	// 另一个赋值的数组相应的数值不会发生改变
	fmt.Println(arr1, arr2) //[100 2 3 4] [1 2 3 4]

	//切片是引用类型  地址  赋值之后两个指向的是同一个地址
	s1 := []int{1, 2, 3, 4}
	s2 := s1
	s1[0] = 100
	fmt.Println(s1, s2) //[100 2 3 4] [100 2 3 4]
}
